﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;

namespace RMA.Pantallas
{
    public partial class frmCodigoAut : Form
    {
        public frmCodigoAut()
        {
            InitializeComponent();
        }

        private void frmCodigoAut_Load(object sender, EventArgs e)
        {
            RegresaCodigoInterno();
        }
        private void RegresaCodigoInterno()
        {
            Manejador_OrdenInterna objOrden = new Manejador_OrdenInterna();
            DataTable dtCodigo = null;

            try
            {
                dtCodigo = objOrden.RegresaCodigoInterno();
                foreach (DataRow r in dtCodigo.Rows)
                {
                    txtCodigo.Text = r[0].ToString();
                    txtFecha.Text = Convert.ToDateTime(r[1].ToString()).ToShortDateString();
                }


            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void btnGenerar_Click(object sender, EventArgs e)
        {
            Manejador_OrdenInterna objOrden = new Manejador_OrdenInterna();
            bool guarda = false;
            string NuevaClave = "";
            if (Convert.ToDateTime(txtFecha.Text) < DateTime.Today)
            {
                NuevaClave = objOrden.CrearClave();
                guarda = objOrden.CreaNuevoCodigo(NuevaClave, DateTime.Today.ToShortDateString());
                if (guarda)
                {
                    MessageBox.Show("Nuevo Codigo Interno Generado", "Éxito", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    RegresaCodigoInterno();
                }
                else
                {
                    MessageBox.Show("No se pudo actualizar el nuevo codigo interno", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    RegresaCodigoInterno();
                }

            }
            else
            {
                MessageBox.Show("Solo se puede crear 1 Clave por dia", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                RegresaCodigoInterno();
            }
        }

       
    }
}
